<?xml version="1.0" encoding="ascii"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>SatStress.SatStress.StressDef</title>
  <link rel="stylesheet" href="epydoc.css" type="text/css" />
  <script type="text/javascript" src="epydoc.js"></script>
</head>

<body bgcolor="white" text="black" link="blue" vlink="#204080"
      alink="#204080">
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
       bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="middle">
  <!-- Home link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="SatStress-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Tree link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Index link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Help link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Project homepage -->
      <th class="navbar" align="right" width="100%">
        <table border="0" cellpadding="0" cellspacing="0">
          <tr><th class="navbar" align="center"
            ><a class="navbar" target="_top" href="http://code.google.com/p/satstress">SatStress</a></th>
          </tr></table></th>
  </tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
  <tr valign="top">
    <td width="100%">
      <span class="breadcrumbs">
        <a href="SatStress-module.html">Package&nbsp;SatStress</a> ::
        <a href="SatStress.SatStress-module.html">Module&nbsp;SatStress</a> ::
        Class&nbsp;StressDef
      </span>
    </td>
    <td>
      <table cellpadding="0" cellspacing="0">
        <!-- hide/show private -->
        <tr><td align="right"><span class="options"
            >[<a href="frames.html" target="_top">frames</a
            >]&nbsp;|&nbsp;<a href="SatStress.SatStress.StressDef-class.html"
            target="_top">no&nbsp;frames</a>]</span></td></tr>
      </table>
    </td>
  </tr>
</table>
<!-- ==================== CLASS DESCRIPTION ==================== -->
<h1 class="epydoc">Class StressDef</h1><p class="nomargin-top"><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef">source&nbsp;code</a></span></p>
<pre class="base-tree">
object --+
         |
        <strong class="uidshort">StressDef</strong>
</pre>

<dl><dt>Known Subclasses:</dt>
<dd>
      <ul class="subclass-list">
<li><a href="SatStress.SatStress.Diurnal-class.html">Diurnal</a></li><li>, <a href="SatStress.SatStress.NSR-class.html">NSR</a></li>  </ul>
</dd></dl>

<hr />
<p>A base class from which particular tidal stress field objects 
  descend.</p>
  <p>Different tidal forcings are specified as sub-classes of this 
  superclass (one for each separate forcing).</p>
  <p>In the expressions of the stress fields, the time <i 
  class="math">t</i> is specified in seconds, with zero occuring at 
  periapse, in order to be compatible with the future inclusion of 
  stressing mechanisms which may have explicit time dependence instead of 
  being a function of the satellite's orbital position (e.g. a true polar 
  wander trajectory).</p>
  <p>Location is specified within a polar coordinate system having its 
  origin at the satellite's center of mass, using the following 
  variables:</p>
  <ul>
    <li>
      co-latitude (&theta;): The arc separating a point on the surface of 
      the satellite from the north pole (0 &lt; &theta; &lt; &pi;).
    </li>
    <li>
      longitude (&phi;): The arc separating the meridian of a point and the
      meridian which passes under the average location of the primary 
      (planet) in the sky over the course of an orbit (0 &lt; &phi; &lt; 
      2&pi;). <b>East is taken as positive.</b>
    </li>
  </ul>
  <p>Each subclass must define its own version of the three components of 
  the membrane stress tensor, <code>Ttt</code>, <code>Tpp</code>, and 
  <code>Tpt</code> (the north-south, east-west, and shear stress 
  components) as methods.</p>

<!-- ==================== INSTANCE METHODS ==================== -->
<a name="section-InstanceMethods"></a>
<table class="summary" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="table-header">
  <td align="left" colspan="2" class="table-header">
    <span class="table-header">Instance Methods</span></td>
</tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">&nbsp;</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Output information about this stress field, including frequency 
      dependent parameters.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.__str__">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">&nbsp;</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a name="forcing_period"></a><span class="summary-sig-name">forcing_period</span>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the forcing period based on the forcing frequency (omega).</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.forcing_period">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">&nbsp;</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#calcLove" class="summary-sig-name">calcLove</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the Love numbers for the satellite and the given forcing.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.calcLove">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">&nbsp;</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#calcLoveInfinitePeriod" class="summary-sig-name">calcLoveInfinitePeriod</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Return a set of zero Love numbers constructed statically.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.calcLoveInfinitePeriod">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">&nbsp;</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#calcLoveWahr4LayerExternal" class="summary-sig-name">calcLoveWahr4LayerExternal</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Use John Wahr's Love number code to calculate h, k, and l.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.calcLoveWahr4LayerExternal">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">float</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#Delta" class="summary-sig-name">Delta</a>(<span class="summary-sig-arg">self</span>,
        <span class="summary-sig-arg">layer_n</span>=<span class="summary-sig-default">-1</span>)</span><br />
      Calculate &Delta;, a measure of how viscous the layer's response is.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Delta">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">float</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#Z" class="summary-sig-name">Z</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the value of Z, a constant that sits in front of many terms
      in the potential defined by Wahr et al.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Z">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#mu_twiddle" class="summary-sig-name">mu_twiddle</a>(<span class="summary-sig-arg">self</span>,
        <span class="summary-sig-arg">layer_n</span>=<span class="summary-sig-default">-1</span>)</span><br />
      Calculate the frequency-dependent Lame parameter &mu; for a Maxwell 
      rheology.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.mu_twiddle">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#lambda_twiddle" class="summary-sig-name">lambda_twiddle</a>(<span class="summary-sig-arg">self</span>,
        <span class="summary-sig-arg">layer_n</span>=<span class="summary-sig-default">-1</span>)</span><br />
      Calculate the frequency-dependent Lame parameter &lambda; for a 
      Maxwell rheology.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.lambda_twiddle">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#alpha" class="summary-sig-name">alpha</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the coefficient alpha twiddle for the surface layer (see 
      Wahr et al.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.alpha">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#Gamma" class="summary-sig-name">Gamma</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the coefficient capital Gamma twiddle for the surface layer
      (see Wahr et al.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Gamma">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#b1" class="summary-sig-name">b1</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the coefficient beta one twiddle for the surface layer (see
      Wahr et al.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.b1">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#g1" class="summary-sig-name">g1</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the coefficient gamma one twiddle for the surface layer 
      (see Wahr et al.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.g1">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#b2" class="summary-sig-name">b2</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the coefficient beta two twiddle for the surface layer (see
      Wahr et al.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.b2">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">complex</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#g2" class="summary-sig-name">g2</a>(<span class="summary-sig-arg">self</span>)</span><br />
      Calculate the coefficient gamma two twiddle for the surface layer 
      (see Wahr et al.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.g2">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">float</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#Ttt" class="summary-sig-name">Ttt</a>(<span class="summary-sig-arg">self</span>,
        <span class="summary-sig-arg">theta</span>,
        <span class="summary-sig-arg">phi</span>,
        <span class="summary-sig-arg">t</span>)</span><br />
      Calculates the &tau;_&theta;&theta; (north-south) component of the 
      stress tensor.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Ttt">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">float</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#Tpp" class="summary-sig-name">Tpp</a>(<span class="summary-sig-arg">self</span>,
        <span class="summary-sig-arg">theta</span>,
        <span class="summary-sig-arg">phi</span>,
        <span class="summary-sig-arg">t</span>)</span><br />
      Calculates the &tau;_&phi;&phi; (east-west) component of the stress 
      tensor.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Tpp">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">float</span>
    </td><td class="summary">
      <table width="100%" cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td><span class="summary-sig"><a href="SatStress.SatStress.StressDef-class.html#Tpt" class="summary-sig-name">Tpt</a>(<span class="summary-sig-arg">self</span>,
        <span class="summary-sig-arg">theta</span>,
        <span class="summary-sig-arg">phi</span>,
        <span class="summary-sig-arg">t</span>)</span><br />
      Calculates the &tau;_&phi;&theta; (off-diagonal) component of the 
      stress tensor.</td>
          <td align="right" valign="top">
            <span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Tpt">source&nbsp;code</a></span>
            
          </td>
        </tr>
      </table>
      
    </td>
  </tr>
  <tr>
    <td colspan="2" class="summary">
    <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
      <code>__delattr__</code>,
      <code>__getattribute__</code>,
      <code>__hash__</code>,
      <code>__init__</code>,
      <code>__new__</code>,
      <code>__reduce__</code>,
      <code>__reduce_ex__</code>,
      <code>__repr__</code>,
      <code>__setattr__</code>
      </p>
    </td>
  </tr>
</table>
<!-- ==================== CLASS VARIABLES ==================== -->
<a name="section-ClassVariables"></a>
<table class="summary" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="table-header">
  <td align="left" colspan="2" class="table-header">
    <span class="table-header">Class Variables</span></td>
</tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type">float</span>
    </td><td class="summary">
        <a name="omega"></a><span class="summary-name">omega</span> = <code title="0.0">0.0</code><br />
      the forcing frequency associated with the stress.
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type"><a href="SatStress.SatStress.Satellite-class.html" 
      class="link">Satellite</a></span>
    </td><td class="summary">
        <a name="satellite"></a><span class="summary-name">satellite</span> = <code title="None">None</code><br />
      the satellite which the stress is being applied to.
    </td>
  </tr>
<tr>
    <td width="15%" align="right" valign="top" class="summary">
      <span class="summary-type"><a href="SatStress.SatStress.LoveNum-class.html" 
      class="link">LoveNum</a></span>
    </td><td class="summary">
        <a name="love"></a><span class="summary-name">love</span> = <code title="LoveNum(0, 0, 0, 0, 0, 0)">LoveNum(0, 0, 0, 0, 0, 0)</code><br />
      the Love numbers which result from the given forcing frequency and 
      the specified satellite structure.
    </td>
  </tr>
</table>
<!-- ==================== PROPERTIES ==================== -->
<a name="section-Properties"></a>
<table class="summary" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="table-header">
  <td align="left" colspan="2" class="table-header">
    <span class="table-header">Properties</span></td>
</tr>
  <tr>
    <td colspan="2" class="summary">
    <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
      <code>__class__</code>
      </p>
    </td>
  </tr>
</table>
<!-- ==================== METHOD DETAILS ==================== -->
<a name="section-MethodDetails"></a>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="table-header">
  <td align="left" colspan="2" class="table-header">
    <span class="table-header">Method Details</span></td>
</tr>
</table>
<a name="__str__"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
    <br /><em class="fname">(Informal representation operator)</em>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.__str__">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Output information about this stress field, including frequency 
  dependent parameters.</p>
  <dl class="fields">
    <dt>Overrides:
        object.__str__
    </dt>
  </dl>
</td></tr></table>
</div>
<a name="calcLove"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">calcLove</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.calcLove">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the Love numbers for the satellite and the given 
  forcing.</p>
  <p>If an infinite forcing period is given, return zero valued Love 
  numbers.</p>
  <p>This is a wrapper function, which can be used to call different Love 
  number codes in the future.</p>
  <dl class="fields">
    <dt>Raises:</dt>
    <dd><ul class="nomargin-top">
        <li><code><strong class='fraise'><a href="SatStress.SatStress.InvalidLoveNumberError-class.html">InvalidLoveNumberError</a></strong></code> - if the magnitude of the imaginary part of any Love number is larger
        than its real part, if the real part is ever less than zero, or if 
        the real coefficient of the imaginary part is ever positive.</li>
    </ul></dd>
  </dl>
</td></tr></table>
</div>
<a name="calcLoveInfinitePeriod"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">calcLoveInfinitePeriod</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.calcLoveInfinitePeriod">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Return a set of zero Love numbers constructed statically.</p>
  <p>This method is included so we don't have to worry about whether the 
  Love number code can deal with being given an infinite period.  All 
  stresses will relax to zero with an infinite period (since the shear 
  modulus &mu; goes to zero), so it doesn't really matter what we set the 
  Love numbers to here.</p>
  <dl class="fields">
  </dl>
</td></tr></table>
</div>
<a name="calcLoveWahr4LayerExternal"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">calcLoveWahr4LayerExternal</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.calcLoveWahr4LayerExternal">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Use John Wahr's Love number code to calculate h, k, and l.</p>
  <p>At the moment, the code is fairly limited in the kind of input it can 
  take.  The specified satellite must:</p>
  <ul>
    <li>
      use a Maxwell rheology
    </li>
    <li>
      have a liquid water ocean underlying the ice shell
    </li>
    <li>
      have a 4-layer structure (ice_upper, ice_lower, ocean, core)
    </li>
  </ul>
  <p>Eventually the Love number code will be more closely integrated with 
  this package, allowing more flexibility in the interior structure of the 
  satellite.</p>
  <p>A temporary directory named lovetmp-XXXXXXX (where the X's are a 
  random hexadecimal number) is created in the current working directory, 
  within which the Love number code is run.  The directory is deleted 
  immediately following the calculation.</p>
  <dl class="fields">
    <dt>Raises:</dt>
    <dd><ul class="nomargin-top">
        <li><code><strong class='fraise'><a href="SatStress.SatStress.LoveExcessiveDeltaError-class.html">LoveExcessiveDeltaError</a></strong></code> - if <a href="SatStress.SatStress.StressDef-class.html#Delta" 
        class="link">StressDef.Delta</a>() &gt; 10^9 for either of the ice 
        layers.</li>
    </ul></dd>
  </dl>
</td></tr></table>
</div>
<a name="Delta"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">Delta</span>(<span class="sig-arg">self</span>,
        <span class="sig-arg">layer_n</span>=<span class="sig-default">-1</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Delta">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate &Delta;, a measure of how viscous the layer's response 
  is.</p>
  <dl class="fields">
    <dt>Parameters:</dt>
    <dd><ul class="nomargin-top">
        <li><strong class="pname"><code>layer_n</code></strong> (int) - indicates which satellite layer Delta should be calculated for, 
          defaulting to the surface (recall that layer 0 is the core)</li>
    </ul></dd>
    <dt>Returns: float</dt>
        <dd>&Delta;= &mu;/(&omega;*&eta;)</dd>
  </dl>
</td></tr></table>
</div>
<a name="Z"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">Z</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Z">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the value of Z, a constant that sits in front of many terms 
  in the potential defined by Wahr et al. (2008).</p>
  <dl class="fields">
    <dt>Returns: float</dt>
        <dd>Z, a common constant in many of the Wahr et al. potential terms.</dd>
  </dl>
</td></tr></table>
</div>
<a name="mu_twiddle"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">mu_twiddle</span>(<span class="sig-arg">self</span>,
        <span class="sig-arg">layer_n</span>=<span class="sig-default">-1</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.mu_twiddle">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the frequency-dependent Lame parameter &mu; for a Maxwell 
  rheology.</p>
  <dl class="fields">
    <dt>Parameters:</dt>
    <dd><ul class="nomargin-top">
        <li><strong class="pname"><code>layer_n</code></strong> - number of layer for which we want to calculate &mu;, defaults to 
          the surface (with the core being layer zero).</li>
    </ul></dd>
    <dt>Returns: complex</dt>
        <dd>the frequency-dependent Lame parameter &mu; for a Maxwell 
          rheology</dd>
  </dl>
</td></tr></table>
</div>
<a name="lambda_twiddle"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">lambda_twiddle</span>(<span class="sig-arg">self</span>,
        <span class="sig-arg">layer_n</span>=<span class="sig-default">-1</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.lambda_twiddle">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the frequency-dependent Lame parameter &lambda; for a 
  Maxwell rheology.</p>
  <dl class="fields">
    <dt>Parameters:</dt>
    <dd><ul class="nomargin-top">
        <li><strong class="pname"><code>layer_n</code></strong> - number of layer for which we want to calculate &mu;, defaults to 
          the surface (with the core being layer zero).</li>
    </ul></dd>
    <dt>Returns: complex</dt>
        <dd>the frequency-dependent Lame parameter &lambda; for a Maxwell 
          rheology.</dd>
  </dl>
</td></tr></table>
</div>
<a name="alpha"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">alpha</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.alpha">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the coefficient alpha twiddle for the surface layer (see 
  Wahr et al. 2008).</p>
  <dl class="fields">
    <dt>Returns: complex</dt>
        <dd>Calculate the coefficient alpha twiddle for the surface layer 
          (see Wahr et al. 2008).</dd>
  </dl>
</td></tr></table>
</div>
<a name="Gamma"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">Gamma</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Gamma">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the coefficient capital Gamma twiddle for the surface layer 
  (see Wahr et al. 2008).</p>
  <dl class="fields">
    <dt>Returns: complex</dt>
        <dd>the coefficient capital Gamma twiddle for the surface layer (see 
          Wahr et al. 2008).</dd>
  </dl>
</td></tr></table>
</div>
<a name="b1"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">b1</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.b1">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the coefficient beta one twiddle for the surface layer (see 
  Wahr et al. 2008).</p>
  <dl class="fields">
    <dt>Returns: complex</dt>
        <dd>the coefficient beta one twiddle for the surface layer (see Wahr 
          et al. 2008).</dd>
  </dl>
</td></tr></table>
</div>
<a name="g1"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">g1</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.g1">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the coefficient gamma one twiddle for the surface layer (see
  Wahr et al. (2008)).</p>
  <dl class="fields">
    <dt>Returns: complex</dt>
        <dd>the coefficient gamma one twiddle for the surface layer (see Wahr
          et al. (2008)).</dd>
  </dl>
</td></tr></table>
</div>
<a name="b2"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">b2</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.b2">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the coefficient beta two twiddle for the surface layer (see 
  Wahr et al. (2008)).</p>
  <dl class="fields">
    <dt>Returns: complex</dt>
        <dd>the coefficient beta two twiddle for the surface layer (see Wahr 
          et al. (2008)).</dd>
  </dl>
</td></tr></table>
</div>
<a name="g2"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">g2</span>(<span class="sig-arg">self</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.g2">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculate the coefficient gamma two twiddle for the surface layer (see
  Wahr et al. (2008)).</p>
  <dl class="fields">
    <dt>Returns: complex</dt>
        <dd>the coefficient gamma two twiddle for the surface layer (see Wahr
          et al. (2008)).</dd>
  </dl>
</td></tr></table>
</div>
<a name="Ttt"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">Ttt</span>(<span class="sig-arg">self</span>,
        <span class="sig-arg">theta</span>,
        <span class="sig-arg">phi</span>,
        <span class="sig-arg">t</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Ttt">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculates the &tau;_&theta;&theta; (north-south) component of the 
  stress tensor.</p>
  <p>In the base class, this is a purely virtual method - it must be 
  defined by the subclasses that describe particular tidal stresses.</p>
  <dl class="fields">
    <dt>Parameters:</dt>
    <dd><ul class="nomargin-top">
        <li><strong class="pname"><code>theta</code></strong> (float) - the co-latitude of the point at which to calculate the stress 
          [rad].</li>
        <li><strong class="pname"><code>phi</code></strong> (float) - the east-positive longitude of the point at which to calculate 
          the stress [rad].</li>
        <li><strong class="pname"><code>t</code></strong> (float) - the time, in seconds elapsed since pericenter, at which to 
          perform the stress calculation [s].</li>
    </ul></dd>
    <dt>Returns: float</dt>
        <dd>the &tau;_&theta;&theta; component of the 2x2 membrane stress 
          tensor.</dd>
  </dl>
</td></tr></table>
</div>
<a name="Tpp"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">Tpp</span>(<span class="sig-arg">self</span>,
        <span class="sig-arg">theta</span>,
        <span class="sig-arg">phi</span>,
        <span class="sig-arg">t</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Tpp">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculates the &tau;_&phi;&phi; (east-west) component of the stress 
  tensor.</p>
  <p>In the base class, this is a purely virtual method - it must be 
  defined by the subclasses that describe particular tidal stresses.</p>
  <dl class="fields">
    <dt>Parameters:</dt>
    <dd><ul class="nomargin-top">
        <li><strong class="pname"><code>theta</code></strong> (float) - the co-latitude of the point at which to calculate the stress 
          [rad].</li>
        <li><strong class="pname"><code>phi</code></strong> (float) - the east-positive longitude of the point at which to calculate 
          the stress [rad].</li>
        <li><strong class="pname"><code>t</code></strong> (float) - the time, in seconds elapsed since pericenter, at which to 
          perform the stress calculation [s].</li>
    </ul></dd>
    <dt>Returns: float</dt>
        <dd>the &tau;_&phi;&phi; component of the 2x2 membrane stress tensor.</dd>
  </dl>
</td></tr></table>
</div>
<a name="Tpt"></a>
<div>
<table class="details" border="1" cellpadding="3"
       cellspacing="0" width="100%" bgcolor="white">
<tr><td>
  <table width="100%" cellpadding="0" cellspacing="0" border="0">
  <tr valign="top"><td>
  <h3 class="epydoc"><span class="sig"><span class="sig-name">Tpt</span>(<span class="sig-arg">self</span>,
        <span class="sig-arg">theta</span>,
        <span class="sig-arg">phi</span>,
        <span class="sig-arg">t</span>)</span>
  </h3>
  </td><td align="right" valign="top"
    ><span class="codelink"><a href="SatStress.SatStress-pysrc.html#StressDef.Tpt">source&nbsp;code</a></span>&nbsp;
    </td>
  </tr></table>
  
  <p>Calculates the &tau;_&phi;&theta; (off-diagonal) component of the 
  stress tensor.</p>
  <p>In the base class, this is a purely virtual method - it must be 
  defined by the subclasses that describe particular tidal stresses.</p>
  <dl class="fields">
    <dt>Parameters:</dt>
    <dd><ul class="nomargin-top">
        <li><strong class="pname"><code>theta</code></strong> (float) - the co-latitude of the point at which to calculate the stress 
          [rad].</li>
        <li><strong class="pname"><code>phi</code></strong> (float) - the east-positive longitude of the point at which to calculate 
          the stress [rad].</li>
        <li><strong class="pname"><code>t</code></strong> (float) - the time in seconds elapsed since pericenter, at which to perform
          the stress calculation [s].</li>
    </ul></dd>
    <dt>Returns: float</dt>
        <dd>the &tau;_&phi;&theta; component of the 2x2 membrane stress 
          tensor.</dd>
  </dl>
</td></tr></table>
</div>
<br />
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
       bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="middle">
  <!-- Home link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="SatStress-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Tree link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Index link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Help link -->
      <th>&nbsp;&nbsp;&nbsp;<a
        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>

  <!-- Project homepage -->
      <th class="navbar" align="right" width="100%">
        <table border="0" cellpadding="0" cellspacing="0">
          <tr><th class="navbar" align="center"
            ><a class="navbar" target="_top" href="http://code.google.com/p/satstress">SatStress</a></th>
          </tr></table></th>
  </tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
  <tr>
    <td align="left" class="footer">
    Generated by Epydoc 3.0.1 on Thu Apr  3 16:42:45 2008
    </td>
    <td align="right" class="footer">
      <a target="mainFrame" href="http://epydoc.sourceforge.net"
        >http://epydoc.sourceforge.net</a>
    </td>
  </tr>
</table>

<script type="text/javascript">
  <!--
  // Private objects are initially displayed (because if
  // javascript is turned off then we want them to be
  // visible); but by default, we want to hide them.  So hide
  // them unless we have a cookie that says to show them.
  checkCookie();
  // -->
</script>
</body>
</html>
